package br.com.mural.controle;

import java.util.ArrayList;
import java.util.List;
import javax.persistence.Query;

import br.com.mural.entidades.TipoUsuario;
import br.com.mural.entidades.Usuario;

public class UsuarioDAOImpl extends DAOImpl<Usuario, Integer> implements UsuarioDAO{
	public List<Usuario> getAllProfessor(){
		List<Usuario> usuarios = new UsuarioDAOImpl().getAll(Usuario.class);
		List<Usuario> professores = new ArrayList<Usuario>();
		for(Usuario usuario: usuarios){
			if(usuario.getTipo() == TipoUsuario.PROFESSOR){
				professores.add(usuario);
			}
		}
		return professores;	
	}
	
	public Usuario buscarPorLogin(String matricula, String senha) {
        //String senhaCriptografada = Util.criptografar(senha);
        entityManager = getEntityManager();
        Usuario usuario = null;
        try {
            Query query = entityManager.createQuery("select u from Usuario u where u.matricula like :matricula and u.senha like :senha");
            query.setParameter("matricula", matricula);
            query.setParameter("senha", senha);
            usuario = (Usuario) query.getSingleResult();

        } catch (Exception e) {
            System.out.println("Erro: " + e.getMessage());
        }
        return usuario;
    }
}
